import { createRouter, createWebHistory } from 'vue-router'
import Login from '@/views/Login/index.vue'
import Layout from '@/views/Layout/index.vue'
import Home from '@/views/Home/index.vue'
import Category from '@/views/Category/index.vue'
import SubCategory from '@/views/SubCategory/index.vue'
import Detail from '@/views/Detail/index.vue'
import CartList from '@/views/CartList/index.vue'
import Checkout from '@/views/Checkout/index.vue'
import Pay from '@/views/Pay/index.vue'
import Member from '@/views/Member/index.vue'
import UserInfo from '@/views/Member/components/UserInfo.vue'
import UserOrder from '@/views/Member/components/UserOrder.vue'

const router = createRouter({
    history: createWebHistory(
        import.meta.env.BASE_URL),
    routes: [{
            path: '/login',
            name: 'Login',
            component: Login
        },
        {
            path: '/',
            name: 'Layout',
            component: Layout,
            children: [{
                    path: '',
                    name: 'Home',
                    component: Home
                }, {
                    path: 'category/:id',
                    name: 'Category',
                    component: Category
                },
                {
                    path: 'category/sub/:id',
                    name: 'SubCategory',
                    component: SubCategory
                },
                {
                    path: 'detail/:id',
                    name: 'Detail',
                    component: Detail
                },
                {
                    path: 'cart',
                    name: 'CartList',
                    component: CartList,
                },
                {
                    path: 'checkout',
                    name: 'Checkout',
                    component: Checkout
                },
                {
                    path: 'pay',
                    name: 'Pay',
                    component: Pay
                },
                {
                    path: 'member',
                    name: 'Member',
                    component: Member,
                    children: [{
                        path: '',
                        name: 'UserInfo',
                        component: UserInfo
                    }, {
                        path: 'order',
                        name: 'UserOrder',
                        component: UserOrder
                    }]

                }


            ],
            meta: {
                requiresAuth: true
            }
        }
    ],
    scrollBehavior() {
        return { top: 0 }
    }
})


export default router